﻿using mozhi.smarterp.Finance.Querys;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Application.Services;

namespace mozhi.smarterp.Finance.Accounts
{
    public interface IAccountBalanceAppService : IApplicationService
    {
        Task<AccountBalanceDto> GetAsync(Guid id);

        Task<List<AccountBalanceDto>> FindAsync(AccountBalanceQuery query);

        Task<AccountBalanceDto> UpdateAsync(AccountBalanceUpdateDto dto);

        Task<TrialBalanceResultDto> TrialBalance();

        Task<bool> DeleteAsync(Guid id);

        Task<bool> ClearAsync();

        Task<int> GetCountAsync(int? period);
    }
}
